The Dynamic Host Configuration Protocol (DHCP) is a network protocol that manages the assignment of IP addresses, subnet masks, default routers, and other IP parameters. The assignment usually occurs when a DHCP configured device boots up or regains connectivity to the network. The DHCP client sends out a query requesting a response from a DHCP server on the network. The DHCP server then replies to the client with its assigned IP address, subnet mask, DNS server and default gateway information. DHCP uses broadcast and unicast.
DHCP may be used in conjunction with authentication and authorization. For example, a user attempting to connect to a network at a hotel is redirected to a registration or sign-in page, where the user agrees to a usage policy and charges for accessing the network. Authenticating the user may be dependent on the information about the device. For example, it the user is running a Windows device, then the user is authenticated. If the user is using an IP telephone, the user is not authenticated. If the device has previously been authenticated, the device is not re-authenticated. Different types of vulnerability scans may be performed depending on the operating system of the device. For example, a different scan is performed for Microsoft and Apple operating systems. In addition, if the device is identified as violating a policy, then the authentication is terminated immediately. For example, the policy specifies that no wireless access points are permitted on the network.
Existing methods to determine information about a client device include active approaches, which require sending a message to the DHCP client to elicit a response. Active approaches are limited in that for security reasons, the client may only allow requests from certain IP addresses.
Thus, an improved method for determining information about a client device is needed. In particular, it would be useful to be able to identify information associated with the operating system of the client device.